home *** CD-ROM | disk | FTP | other *** search
- #define ZERO(x) bzero(&x, sizeof(x))
- #ifdef INIT_LEX
- ZERO( lineno );
- ZERO( ridpointers );
- ZERO( current_declspecs );
- ZERO( declspec_stack );
- ZERO( undeclared_variable_notice );
- ZERO( yychar );
- ZERO( yylval );
- ZERO( yynerrs );
- ZERO( finput );
- declspec_stack = 0;
- input_file_stack = 0;
- bzero(&ridpointers, sizeof ridpointers);
- yynerrs = 0;
- warn_write_strings = 0;
- flag_traditional = 0;
- undeclared_variable_notice = 0;
- current_declspecs = 0;
- long_long_integer_type_node = 0;
- finput = 0;
- integer_type_node = 0;
- char_type_node = 0;
- lineno = 0;
- input_file_stack_tick = 0;
- long_long_unsigned_type_node = 0;
- input_filename = 0;
- long_double_type_node = 0;
- flag_no_asm = 0;
- signed_char_type_node = 0;
- size_zero_node = 0;
- current_function_returns_value = 0;
- void_type_node = 0;
- bzero(&yylval, sizeof yylval);
- end_of_file = 0;
- wide_buffer = 0;
- max_wide = 0;
- token_buffer = 0;
- maxtoken = 0;
- lastiddecl = 0;
- #endif
- #ifdef INIT_STUPID
- after_insn_hard_regs = 0;
- regs_live = 0;
- reg_order = 0;
- reg_crosses_blocks = 0;
- reg_where_born = 0;
- reg_where_dead = 0;
- last_label_suid = 0;
- last_jump_suid = 0;
- last_call_suid = 0;
- uid_suid = 0;
- #endif
- #ifdef INIT_COMBINE
- bzero(&undobuf, sizeof undobuf);
- #endif
- #ifdef INIT_PARAMETER
- bzero(&thestack, sizeof thestack);
- paramob = 0;
- #endif
- #ifdef INIT_LAYOUT
- bzero(&size_table, sizeof size_table);
- permanent_type_end = 0;
- temporary_type_end = 0;
- permanent_type_chain = 0;
- immediate_size_expand = 0;
- temporary_type_chain = 0;
- const0_rtx = 0;
- ZERO( sizetype );
- ZERO( size_zero_node );
- ZERO( size_one_node );
- ZERO( immediate_size_expand );
- ZERO( permanent_type_chain );
- ZERO( temporary_type_chain );
- ZERO( permanent_type_end );
- ZERO( temporary_type_end );
- #endif
- #ifdef INIT_TOPLEV
- asm_out_file = 0;
- main_input_filename = 0;
- flow_time = 0;
- final_time = 0;
- warningcount = 0;
- last_error_function = 0;
- need_error_newline = 0;
- init_flow();
- init_recog2();
- init_expr2();
- init_decl();
- init_parse();
- init_combine();
- init_emit2();
- init_final2();
- init_integrate();
- init_optabs2();
- init_parameter();
- init_regclass();
- init_reload2();
- init_reload1();
- init_stmt();
- init_stupid();
- init_tree2();
- init_varasm();
- init_layout();
- init_out_mac();
- bzero(&float_handler, sizeof float_handler);
- progname = 0;
- asm_file_name = 0;
- global_alloc_time = 0;
- save_argc = 0;
- dump_base_name = 0;
- save_argv = 0;
- parse_time = 0;
- ZERO( rtx_equal_function_value_matters );
- ZERO( jump_opt_dump );
- ZERO( target_flags );
- ZERO( input_filename );
- ZERO( main_input_filename );
- ZERO( input_file_stack );
- ZERO( input_file_stack_tick );
- ZERO( use_gdb_dbx_extensions );
- ZERO( warn_unused );
- ZERO( warn_shadow );
- ZERO( warn_switch );
- ZERO( warn_id_clash );
- ZERO( id_clash_len );
- ZERO( profile_block_flag );
- ZERO( flag_signed_char );
- ZERO( flag_short_enums );
- ZERO( flag_volatile );
- ZERO( flag_inline_functions );
- ZERO( flag_keep_inline_functions );
- ZERO( flag_shared_data );
- ZERO( flag_delayed_branch );
- ZERO( dump_base_name );
- ZERO( progname );
- ZERO( save_argc );
- ZERO( save_argv );
- ZERO( asm_file_name );
- ZERO( sym_file_name );
- ZERO( asm_out_file );
- ZERO( rtl_dump_file );
- ZERO( jump_opt_dump_file );
- ZERO( cse_dump_file );
- ZERO( loop_dump_file );
- ZERO( flow_dump_file );
- ZERO( combine_dump_file );
- ZERO( local_reg_dump_file );
- ZERO( global_reg_dump_file );
- ZERO( jump2_opt_dump_file );
- ZERO( dbr_sched_dump_file );
- ZERO( parse_time );
- ZERO( varconst_time );
- ZERO( integration_time );
- ZERO( jump_time );
- ZERO( cse_time );
- ZERO( loop_time );
- ZERO( flow_time );
- ZERO( combine_time );
- ZERO( local_alloc_time );
- ZERO( global_alloc_time );
- ZERO( dbr_sched_time );
- ZERO( final_time );
- ZERO( symout_time );
- ZERO( dump_time );
- ZERO( float_handled );
- ZERO( float_handler );
- #endif
- #ifdef INIT_TREE
- tree_code_length[1] = 7;
- do_identifier_warnings = 0;
- tree_node_counter = 0;
- bzero(&hash_table, sizeof hash_table);
- maybepermanent_firstobj = 0;
- momentary_firstobj = 0;
- bzero(&maybepermanent_obstack, sizeof maybepermanent_obstack);
- momentary_stack = 0;
- temporary_firstobj = 0;
- rtl_obstack = 0;
- bzero(&type_hash_table, sizeof type_hash_table);
- bzero(&momentary_obstack, sizeof momentary_obstack);
- expression_obstack = 0;
- saveable_obstack = 0;
- bzero(&permanent_obstack, sizeof permanent_obstack);
- bzero(&temporary_obstack, sizeof temporary_obstack);
- current_obstack = 0;
- set_identifier_size(7);
- ZERO( all_types_permanent );
- ZERO( permanent_obstack );
- ZERO( maybepermanent_obstack );
- ZERO( temporary_obstack );
- ZERO( momentary_obstack );
- ZERO( saveable_obstack );
- ZERO( current_obstack );
- ZERO( expression_obstack );
- ZERO( maybepermanent_firstobj );
- ZERO( temporary_firstobj );
- ZERO( momentary_firstobj );
- ZERO( momentary_stack );
- ZERO( type_hash_table );
- #endif
- #ifdef INIT_STMT
- parm_reg_stack_loc = 0;
- max_parm_reg = 0;
- last_parm_insn = 0;
- last_expr_type = 0;
- nesting_stack = 0;
- rtl_expr_chain = 0;
- last_expr_value = 0;
- tail_recursion_reentry = 0;
- invalid_stack_slot = 0;
- frame_offset = 0;
- this_function = 0;
- parm_birth_insn = 0;
- ZERO( current_function_calls_setjmp );
- ZERO( save_expr_regs );
- ZERO( current_function_calls_alloca );
- ZERO( current_function_pops_args );
- ZERO( current_function_returns_struct );
- ZERO( current_function_returns_pcc_struct);
- ZERO( current_function_needs_context );
- ZERO( current_function_returns_pointer );
- ZERO( current_function_args_size );
- ZERO( current_function_pretend_args_size );
- ZERO( current_function_name );
- ZERO( current_function_is_pascal );
- ZERO( cleanup_label );
- ZERO( return_label );
- ZERO( stack_slot_list );
- ZERO( emit_filename );
- ZERO( emit_lineno );
- ZERO( block_stack );
- ZERO( stack_block_stack );
- ZERO( cond_stack );
- ZERO( loop_stack );
- ZERO( case_stack );
- ZERO( nesting_stack );
- ZERO( nesting_depth );
- ZERO( expr_stmts_for_value );
- #endif
- #ifdef INIT_OPTABS
- bzero(&floattab, sizeof floattab);
- bzero(&fixtrunctab, sizeof fixtrunctab);
- bzero(&fixtab, sizeof fixtab);
- cmp_optab = 0;
- sqrt_optab = 0;
- sinh_optab = 0;
- one_cmpl_optab = 0;
- tanh_optab = 0;
- log10_optab = 0;
- flodiv_optab = 0;
- abs_optab = 0;
- add_optab = 0;
- cos_optab = 0;
- exp_optab = 0;
- ffs_optab = 0;
- ior_optab = 0;
- atan_optab = 0;
- acos_optab = 0;
- asin_optab = 0;
- ashr_optab = 0;
- ashl_optab = 0;
- log_optab = 0;
- mov_optab = 0;
- cosh_optab = 0;
- neg_optab = 0;
- smul_widen_optab = 0;
- umul_widen_optab = 0;
- sin_optab = 0;
- sub_optab = 0;
- tan_optab = 0;
- lshr_optab = 0;
- lshl_optab = 0;
- xor_optab = 0;
- rotr_optab = 0;
- rotl_optab = 0;
- sdiv_optab = 0;
- smod_optab = 0;
- smul_optab = 0;
- udiv_optab = 0;
- umod_optab = 0;
- movstrict_optab = 0;
- and_optab = 0;
- sdivmod_optab = 0;
- udivmod_optab = 0;
- ucmp_optab = 0;
- umul_optab = 0;
- ftrunc_optab = 0;
- tst_optab = 0;
- andcb_optab = 0;
- bzero(&setcc_gen_fctn, sizeof setcc_gen_fctn);
- bzero(&bcc_gen_fctn, sizeof bcc_gen_fctn);
- ldconst0_rtx = 0;
- const1_rtx = 0;
- struct_value_rtx = 0;
- static_chain_rtx = 0;
- cc0_rtx = 0;
- dconst0_rtx = 0;
- fconst0_rtx = 0;
- ZERO( add_optab );
- ZERO( sub_optab );
- ZERO( smul_optab );
- ZERO( umul_optab );
- ZERO( smul_widen_optab );
- ZERO( umul_widen_optab );
- ZERO( sdiv_optab );
- ZERO( sdivmod_optab );
- ZERO( udiv_optab );
- ZERO( udivmod_optab );
- ZERO( smod_optab );
- ZERO( umod_optab );
- ZERO( flodiv_optab );
- ZERO( ftrunc_optab );
- ZERO( and_optab );
- ZERO( andcb_optab );
- ZERO( ior_optab );
- ZERO( xor_optab );
- ZERO( ashl_optab );
- ZERO( ashr_optab );
- ZERO( lshl_optab );
- ZERO( lshr_optab );
- ZERO( rotl_optab );
- ZERO( rotr_optab );
- ZERO( mov_optab );
- ZERO( movstrict_optab );
- ZERO( cmp_optab );
- ZERO( tst_optab );
- ZERO( neg_optab );
- ZERO( abs_optab );
- ZERO( one_cmpl_optab );
- ZERO( ffs_optab );
- ZERO( sin_optab );
- ZERO( cos_optab );
- ZERO( tan_optab );
- ZERO( asin_optab );
- ZERO( acos_optab );
- ZERO( atan_optab );
- ZERO( sinh_optab );
- ZERO( cosh_optab );
- ZERO( tanh_optab );
- ZERO( exp_optab );
- ZERO( log_optab );
- ZERO( log10_optab );
- ZERO( sqrt_optab );
- ZERO( bcc_gen_fctn );
- ZERO( setcc_gen_fctn );
- ZERO( ucmp_optab );
- #endif
- #ifdef INIT_VARASM
- bzero(&mnames, sizeof mnames);
- implist = 0;
- bzero(&const_hash_table, sizeof const_hash_table);
- function_defined = 0;
- in_section = 0;
- mtop = 0;
- var_labelno = 0;
- const_labelno = 0;
- bzero(®_class_subclasses, sizeof reg_class_subclasses);
- bzero(®_class_superclasses, sizeof reg_class_superclasses);
- ZERO( const_labelno );
- ZERO( var_labelno );
- ZERO( mnames );
- ZERO( mtop );
- #endif
- #ifdef INIT_INTEGRATE
- parmdecl_map = 0;
- insn_map = 0;
- #endif
- #ifdef INIT_REGCLASS
- preferred_or_nothing = 0;
- prefclass = 0;
- savings = 0;
- ZERO( max_parallel );
- ZERO( fixed_regs );
- ZERO( fixed_reg_set );
- ZERO( call_used_regs );
- ZERO( call_used_reg_set );
- ZERO( call_fixed_regs );
- ZERO( call_fixed_reg_set );
- ZERO( global_regs );
- ZERO( reg_class_size );
- ZERO( reg_class_superclasses );
- ZERO( reg_class_subclasses );
- ZERO( reg_class_subunion );
- ZERO( regno_first_uid );
- ZERO( regno_last_uid );
- #endif
- #ifdef INIT_RELOAD
- n_reloads = 0;
- bzero(&reload_in, sizeof(reload_in));
- bzero(&reload_out, sizeof(reload_out));
- bzero(&reload_reg_class, sizeof(reload_reg_class));
- bzero(&reload_inmode, sizeof(reload_inmode));
- bzero(&reload_outmode, sizeof(reload_outmode));
- bzero(&reload_strict_low, sizeof(reload_strict_low));
- bzero(&reload_reg_rtx, sizeof(reload_reg_rtx));
- bzero(&reload_optional, sizeof(reload_optional));
- bzero(&reload_inc, sizeof(reload_inc));
- bzero(&reload_in_reg, sizeof(reload_in_reg));
- bzero(&reload_nocombine, sizeof(reload_nocombine));
- bzero(&reload_needed_for_multiple, sizeof(reload_needed_for_multiple));
- bzero(&reload_needed_for, sizeof(reload_needed_for));
- bzero(&reload_when_needed, sizeof(reload_when_needed));
- bzero(&reload_earlyclobbers, sizeof(reload_earlyclobbers));
- n_earlyclobbers = 0;
- replace_reloads = 0;
- bzero(&replacements, sizeof(replacements));
- n_replacements = 0;
- n_memlocs = 0;
- indirect_ok = 0;
- static_reload_reg_p = 0;
- subst_reg_equivs_changed = 0;
- hard_regs_live_known = 0;
- output_reloadnum = 0;
- this_insn = 0;
- bzero(&memlocs, sizeof(memlocs));
- ZERO( reg_renumber );
- ZERO( reload_in );
- ZERO( reload_out );
- ZERO( reload_in_reg );
- ZERO( reload_reg_class );
- ZERO( reload_inmode );
- ZERO( reload_outmode );
- ZERO( reload_strict_low );
- ZERO( reload_optional );
- ZERO( reload_inc );
- ZERO( reload_needed_for_multiple );
- ZERO( reload_needed_for );
- ZERO( n_reloads );
- ZERO( reload_reg_rtx );
- ZERO( reload_when_needed );
- ZERO( n_earlyclobbers );
- ZERO( reload_earlyclobbers );
- ZERO( reload_nocombine );
- #endif
- #ifdef INIT_RELOAD1
- bzero(®s_explicitly_used, sizeof regs_explicitly_used);
- bzero(&potential_reload_regs, sizeof potential_reload_regs);
- bzero(&spill_regs, sizeof spill_regs);
- bzero(&forbidden_regs, sizeof forbidden_regs);
- bzero(&spill_reg_order, sizeof spill_reg_order);
- bzero(&spill_reg_store, sizeof spill_reg_store);
- bzero(®_is_output_reload, sizeof reg_is_output_reload);
- reg_equiv_init = 0;
- reg_max_ref_width = 0;
- ZERO( caller_save_needed );
- ZERO( reg_equiv_constant );
- ZERO( reg_equiv_address );
- ZERO( reg_equiv_mem );
- ZERO( reload_first_uid );
- ZERO( double_reg_address_ok );
- ZERO( basic_block_needs );
- ZERO( reload_order );
- ZERO( reload_inherited );
- ZERO( reload_override_in );
- ZERO( reload_spill_index );
- #endif
- #ifdef INIT_FINAL
- lastfile = 0;
- max_block_depth = 0;
- pending_blocks = 0;
- current_gdbfile = 0;
- insn_noperands = 0;
- this_is_asm_operands = 0;
- ZERO( regs_ever_live );
- ZERO( cc_prev_status );
- ZERO( cc_status );
- ZERO( gdbfiles );
- ZERO( frame_pointer_needed );
- ZERO( final_sequence );
- ZERO( next_block_index );
- ZERO( profile_label_no );
- #endif
- #ifdef INIT_OUT_MAC
- ZERO( globalize_this );
- ZERO( lbls );
- ZERO( strs );
- #endif
- #ifdef INIT_DECL
- global_binding_level = 0;
- free_binding_level = 0;
- current_binding_level = 0;
- obey_regdecls = 0;
- long_unsigned_type_node = 0;
- float_type_node = 0;
- char_array_type_node = 0;
- long_integer_type_node = 0;
- int_array_type_node = 0;
- unsigned_type_node = 0;
- double_type_node = 0;
- target_flags = 0;
- double_ftype_double = 0;
- extended_ftype_extended = 0;
- current_function_parms = 0;
- last_function_parms = 0;
- double_ftype_double_double = 0;
- long_ftype_long = 0;
- warn_cast_qual = 0;
- warn_pointer_arith = 0;
- flag_signed_char = 0;
- warn_unused = 0;
- warn_shadow = 0;
- sizetype = 0;
- int_ftype_int = 0;
- short_integer_type_node = 0;
- string_type_node = 0;
- default_function_type = 0;
- integer_zero_node = 0;
- value_identifier = 0;
- ptr_type_node = 0;
- warn_return_type = 0;
- int_ftype_ptr_ptr_int = 0;
- null_pointer_node = 0;
- size_one_node = 0;
- current_function_calls_setjmp = 0;
- long_double_type_size = 0;
- short_unsigned_type_node = 0;
- integer_one_node = 0;
- void_ftype_ptr_int_int = 0;
- void_ftype_ptr_ptr_int = 0;
- unsigned_char_type_node = 0;
- ZERO( long_double_type_size );
- ZERO( integer_zero_node );
- ZERO( integer_one_node );
- ZERO( null_pointer_node );
- ZERO( error_mark_node );
- ZERO( void_type_node );
- ZERO( integer_type_node );
- ZERO( unsigned_type_node );
- ZERO( char_type_node );
- ZERO( current_function_decl );
- ZERO( double_type_node );
- ZERO( long_double_type_node );
- ZERO( float_type_node );
- ZERO( unsigned_char_type_node );
- ZERO( signed_char_type_node );
- ZERO( short_integer_type_node );
- ZERO( short_unsigned_type_node );
- ZERO( long_integer_type_node );
- ZERO( long_unsigned_type_node );
- ZERO( long_long_integer_type_node );
- ZERO( long_long_unsigned_type_node );
- ZERO( string_type_node );
- ZERO( char_array_type_node );
- ZERO( int_array_type_node );
- ZERO( current_function_returns_value );
- ZERO( current_function_returns_null );
- ZERO( flag_cond_mismatch );
- ZERO( flag_no_asm );
- ZERO( warn_implicit );
- ZERO( warn_return_type );
- ZERO( warn_write_strings );
- ZERO( warn_pointer_arith );
- ZERO( warn_strict_prototypes );
- ZERO( warn_cast_qual );
- ZERO( flag_traditional );
- ZERO( ptr_type_node );
- ZERO( default_function_type );
- ZERO( double_ftype_double );
- ZERO( double_ftype_double_double );
- ZERO( int_ftype_int );
- ZERO( long_ftype_long );
- ZERO( extended_ftype_extended );
- ZERO( void_ftype_ptr_ptr_int );
- ZERO( int_ftype_ptr_ptr_int );
- ZERO( void_ftype_ptr_int_int );
- ZERO( value_identifier );
- #endif
- #ifdef INIT_FLOW
- ZERO( regset_bytes );
- ZERO( regset_size );
- ZERO( n_basic_blocks );
- ZERO( basic_block_head );
- ZERO( basic_block_end );
- ZERO( basic_block_live_at_start );
- ZERO( reg_basic_block );
- ZERO( max_regno );
- ZERO( reg_n_refs );
- ZERO( reg_n_sets );
- ZERO( reg_n_deaths );
- ZERO( reg_n_calls_crossed );
- ZERO( reg_live_length );
- #endif
- #ifdef INIT_EMIT
- no_line_numbers = 0;
- first_label_num = 0;
- last_insn = 0;
- first_insn = 0;
- label_num = 1;
- cur_insn_uid = 1;
- last_linenum = 0;
- last_filename = 0;
- unshare_copies = 0;
- ZERO( pc_rtx );
- ZERO( cc0_rtx );
- ZERO( const0_rtx );
- ZERO( const1_rtx );
- ZERO( fconst0_rtx );
- ZERO( dconst0_rtx );
- ZERO( ldconst0_rtx );
- ZERO( stack_pointer_rtx );
- ZERO( frame_pointer_rtx );
- ZERO( arg_pointer_rtx );
- ZERO( struct_value_rtx );
- ZERO( struct_value_incoming_rtx );
- ZERO( static_chain_rtx );
- ZERO( static_chain_incoming_rtx );
- ZERO( regno_pointer_flag );
- ZERO( regno_reg_rtx );
- ZERO( cc1_rtx );
- ZERO( regno_pointer_flag_length );
- #endif
- #ifdef INIT_RECOG
- ZERO( volatile_ok );
- ZERO( recog_addr_dummy );
- ZERO( which_alternative );
- ZERO( reload_completed );
- #endif
- #ifdef INIT_EXPR
- ZERO( cse_not_expected );
- ZERO( inhibit_defer_pop );
- ZERO( pending_stack_adjust );
- ZERO( may_call_alloca );
- #endif
- #if 0
- ZERO_( insn_template );
- ZERO_( insn_outfun );
- ZERO_( insn_gen_function );
- ZERO_( insn_n_operands );
- ZERO_( insn_n_dups );
- ZERO_( insn_operand_constraint );
- ZERO_( insn_operand_mode );
- ZERO_( insn_operand_strict_low );
- ZERO_( insn_operand_predicate );
- ZERO_( insn_machine_info );
- ZERO_( insn_n_alternatives );
- ZERO_( reg_class_contents );
- ZERO_( reg_names );
- ZERO_( dollars_in_ident );
- ZERO_( language_string );
- ZERO_( debug_temp_inits );
- ZERO_( insn_extract_fn );
- ZERO_( regno_reg_class );
- ZERO_( obscure_reg_names );
- ZERO_( lsix );
- ZERO_( totlen );
- ZERO_( target_switches );
- ZERO_( rtx_name );
- ZERO_( mode_name );
- ZERO_( mode_class );
- ZERO_( mode_size );
- ZERO_( mode_unit_size );
- ZERO_( mode_wider_mode );
- ZERO_( rtx_format );
- ZERO_( note_insn_name );
- ZERO_( reg_note_name );
- ZERO_( spaces );
- ZERO_( yydebug );
- ZERO_( regs_live_at_setjmp );
- ZERO_( reg_rtx_no );
- ZERO_( sequence_stack );
- ZERO_( push_args_reversed );
- ZERO_( do_preexpand_calls );
- ZERO_( rtl_dump );
- ZERO_( rtl_dump_and_exit );
- ZERO_( cse_dump );
- ZERO_( loop_dump );
- ZERO_( flow_dump );
- ZERO_( combine_dump );
- ZERO_( local_reg_dump );
- ZERO_( global_reg_dump );
- ZERO_( jump2_opt_dump );
- ZERO_( dbr_sched_dump );
- ZERO_( write_symbols );
- ZERO_( optimize );
- ZERO_( flag_caller_saves );
- ZERO_( flag_pcc_struct_return );
- ZERO_( flag_force_mem );
- ZERO_( flag_force_addr );
- ZERO_( flag_defer_pop );
- ZERO_( flag_float_store );
- ZERO_( flag_combine_regs );
- ZERO_( flag_strength_reduce );
- ZERO_( flag_writable_strings );
- ZERO_( flag_no_function_cse );
- ZERO_( flag_omit_frame_pointer );
- ZERO_( flag_no_peephole );
- ZERO_( flag_syntax_only );
- ZERO_( obey_regdecls );
- ZERO_( quiet_flag );
- ZERO_( inhibit_warnings );
- ZERO_( extra_warnings );
- ZERO_( errorcount );
- ZERO_( warningcount );
- ZERO_( sorrycount );
- ZERO_( profile_flag );
- ZERO_( pedantic );
- ZERO_( segment_name );
- ZERO_( generate_trace_calls );
- ZERO_( ignore_trace_pragmas );
- ZERO_( f_options );
- ZERO_( tree_code_type );
- ZERO_( tree_code_length );
- ZERO_( tree_node_counter );
- ZERO_( debug_no_type_hash );
- #endif
-